<?php

/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */

/**
 * Short description for file
 *
 * PHP version 5.3.+
 *
 * @category   
 * @package    
 * @author     Marius Schmidt <marius.schmidt@gridground.de>
 * @copyright  2010-2012 Gridground UG (haftungsbeschränkt)
 * @license    http://www.gridground.de/license/brickscout.txt
 * @version    GIT: $Id$
 * @link       
 * @see        
 * @since      File available since 
 */

/**
 * Short description for class
 *
 * @category   
 * @package    
 * @author     Marius Schmidt <marius.schmidt@gridground.de>
 * @copyright  2010-2012 Gridground UG (haftungsbeschränkt)
 * @license    http://www.gridground.de/license/brickscout.txt
 * @version    Release: @package_version@
 * @link       
 * @see        
 * @since      Class available since Release 
 */
abstract class Economic_EntityAbstractImpl extends Economic_ObjectAbstractImpl implements Economic_Entity {
    
    protected $_data;
    
    public function setData(Economic_EntityData $data) {
        assert(get_class($this->_data) === get_class($data));
        $this->_data = $data;
    }
    
    public function getData() {
        return $this->_data;
    }
    
    public function __get($name) {
        return $this->_data->$name;
    }
    
    public function __set($name, $value) {
        $this->_data->$name = $value;
    }

}
